package com.cip.client.modelo.entidad;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.jdo.annotations.Extension;
import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.jdo.annotations.PrimaryKey;

import com.cip.client.modelo.BaseRecord;

/**
 * @author Angel
 * 
 */
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class LlamadaRecord extends BaseRecord implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = -6371607866737086120L;

	@PrimaryKey
	@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
	@Extension(vendorName = "datanucleus", key = "gae.encoded-pk", value = "true")
	private String id;

	@Persistent
	private Date fechaHoraLlamada;
	
	@Persistent
	private Date fechaHoraProximaLlamada;

	@Persistent
	private String resultado;

	@Persistent
	private String receptorLlamadaIdeal;
	
	@Persistent
	private String receptorLlamadaReal;
	
	@Persistent
	private String emisorLlamada;

	@Persistent
	private List<ObservacionesLlamadaRecord> observaciones = new ArrayList<ObservacionesLlamadaRecord>();

	
	public LlamadaRecord() {

	}

	@Override
	public void copia(BaseRecord record) {
		setFechaHoraLlamada(((LlamadaRecord) record).getFechaHoraLlamada());
		setFechaHoraProximaLlamada(((LlamadaRecord) record).getFechaHoraProximaLlamada());
		setResultado(((LlamadaRecord) record).getResultado());
		setReceptorLlamadaIdeal(((LlamadaRecord) record).getReceptorLlamadaIdeal());
		setReceptorLlamadaReal(((LlamadaRecord) record).getReceptorLlamadaReal());
		setEmisorLlamada(((LlamadaRecord) record).getEmisorLlamada());
		setObservaciones(((LlamadaRecord) record).getObservaciones());
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public Date getFechaHoraLlamada() {
		return fechaHoraLlamada;
	}

	public void setFechaHoraLlamada(Date fechaHoraLlamada) {
		this.fechaHoraLlamada = fechaHoraLlamada;
	}

	public Date getFechaHoraProximaLlamada() {
		return fechaHoraProximaLlamada;
	}

	public void setFechaHoraProximaLlamada(Date fechaHoraProximaLlamada) {
		this.fechaHoraProximaLlamada = fechaHoraProximaLlamada;
	}

	public String getResultado() {
		return resultado;
	}

	public void setResultado(String resultado) {
		this.resultado = resultado;
	}

	public String getReceptorLlamadaIdeal() {
		return receptorLlamadaIdeal;
	}

	public void setReceptorLlamadaIdeal(String receptorLlamadaIdeal) {
		this.receptorLlamadaIdeal = receptorLlamadaIdeal;
	}

	public String getReceptorLlamadaReal() {
		return receptorLlamadaReal;
	}

	public void setReceptorLlamadaReal(String receptorLlamadaReal) {
		this.receptorLlamadaReal = receptorLlamadaReal;
	}

	public String getEmisorLlamada() {
		return emisorLlamada;
	}

	public void setEmisorLlamada(String emisorLlamada) {
		this.emisorLlamada = emisorLlamada;
	}

	public List<ObservacionesLlamadaRecord> getObservaciones() {
		return observaciones;
	}

	public void setObservaciones(List<ObservacionesLlamadaRecord> observaciones) {
		this.observaciones = observaciones;
	}

	
}